超算能耗=一座城市!或许你需要一台量子计算机
光子盒研究院出品
本文部分内容摘自《Physics World》2022年3月刊[1]。
荷兰莱顿大学的天体物理学家Simon Portegies Zwart是极具环保意识的人。出于职业原因,他几乎不再坐飞机,而是更喜欢坐火车旅行。“我喜欢通过吃素来保护环境,努力减少我的碳足迹,告诉我的孩子不要淋浴太久,改用可再生资源。”但是一旦Zwart决定做出这些改变,他也开始考虑他的碳足迹的其他方面。
他解释道:“我大量使用大型机器,这些电脑消耗的能源和一座小城市一样多,我想我可能是我这条街上污染最严重的人。如果我运行一台超级计算机,消耗的能量相当于10000户人家,那么我有什么资格告诉我的孩子或其他人,他们不应该洗澡20分钟?”
随着世界努力应对气候变化,许多科学家已经开始正视自己碳排放的现实。大部分注意力都集中在学术目的的航空旅行上,研究人员正面临着令人不安的披露。例如,事实证明,气候变化研究人员比其他领域的科学家飞行更频繁。根据2020年的一项研究[2],气候科学家平均每年乘坐飞机两到三次,而其他研究人员在此期间只乘坐两次飞机。但是其他科学家也经常飞行。2019年的一项研究发现[3],加拿大蒙特利尔大学的教授们每年的碳足迹是加拿大人平均水平的两倍,其中大部分差异与职业旅行有关。
参加学术会议尤其是问题的一个重要方面。2019年美国地球物理联盟秋季会议在加州举行时,28000名代表在往返途中排放了约80000吨二氧化碳当量(tCO2e),这几乎是每个科学家三吨排放量,或者爱丁堡市的平均每周的排放量[4]。
此外,加拿大不列颠哥伦比亚大学最近进行的另一项研究表明[5],学术界的航空旅行对生产力或职业成功几乎没有积极影响。当然,在全球新冠肺炎疫情流行的背景下,大多数学者被迫采用和接受在线会议和研讨会。在线活动不仅让更多不同的代表可以参加,还有环境方面的益处。2021年的一项研究发现[6],2020年在线举行的三场大型科学会议的7000名线上代表的碳足迹与2019年同一会议的一名亲自出席者的碳足迹相同。
虽然学术旅行对气候变化的影响是无可争议的,但在过去几年中,许多物理学家发现,他们的电脑使用量可以构成他们碳足迹的很大一部分——有时甚至超过航空旅行。
西澳大利亚大学的天体物理学家Adam Stevens与同事们一起分析了2018-2019年间澳大利亚天文学家的“常规活动”温室气体排放总量,比如旅行、使用超级计算机和在大型天文台工作。研究发现[7],澳大利亚天文学家平均每年产生约37 tCO2e,这比澳大利亚平均水平高出40%,是全球平均水平的五倍。其中最大的碳排放是使用超级计算机处理望远镜收集的大量数据,并进行宇宙学模拟。每名天文学家的排放量约为15吨,几乎是飞行年排放量的四倍(图1)。
图1 澳大利亚天文学家四种排放源的绿色成本细目,以每人每年二氧化碳(CO2)当量吨(t)或“全时当量”计算(FTE)。显示了误差线,但请注意天文台的值是一个下限。
在另一个例子中,即将到来的中微子探测巨型阵列(GRAND)项目将使用分布在世界各地山区的20万个天线来探测来自深空的超高能中微子。去年,该项目背后的团队估算了三个不同实验阶段的温室气体排放量:原型试验、中规模实验和将于21世纪30年代开始的全规模实验。他们所说的“数字技术”——模拟和数据分析、数据传输和存储、计算机和其他电子设备——将在该项目的碳足迹[8]中占很大比例。
在原型阶段,预计69%的排放来自数字技术,相比之下,27%来自旅行,4%来自“硬件设备”,如制造无线电天线。在中期阶段,数字技术将占40%的排放量,其余的在旅行和硬件之间平分。一旦整个实验开始运行,大部分排放将由硬件(48%)和数字技术(45%)共享。
有趣的是,超级计算的环境成本在很大程度上取决于为设备供电的能源来自哪里。2020年,荷兰天文学委员会要求Portegies Zwart和一组其他研究人员分析其六个成员机构[9]。他们估计,2019年,荷兰天文学家平均排放4.7 tCO2e——远低于澳大利亚——其中只有4%来自超级计算。
领导这项研究的荷兰空间研究所的天体物理学家Floris van der Tak认为,荷兰天文学家没有理由比他们的澳大利亚同事更少地使用超级计算机。因此,这种差异可能是由于能源供应的差异。特别是,荷兰国家超级计算设施SURF不产生任何碳排放,因为它使用荷兰风能或太阳能产生的100%可再生能源。少量排放来自使用国际设施和较小的荷兰超级计算机。事实上,Portegies Zwart现在总是检查他使用的超级计算机是否使用绿色能源,如果不是,他会考虑使用不同的设备。同样,van der Tak的建议是“在你要求在设施上待一段时间之前,首先检查他们使用的是什么样的电力”。
位于德国海德堡的马克斯·普朗克天文研究所的温室气体排放凸显了类似的国家间差异。2018年,该研究所的每位研究人员排放了约18 tCO2e [10]——多于荷兰的天文学家,但只有澳大利亚同行的一半(图2)。这些排放量也比德国居民的平均水平高60%,是德国2030年目标的三倍,这符合巴黎气候协议。
马克斯·普朗克研究所2018年约29%的排放来自电力消耗,其中计算,特别是超级计算,占75-90%。德国和澳大利亚之间的关键区别在于能源来自哪里。2018年,德国约一半的电力来自太阳能和风能,而在澳大利亚,绝大多数电力来自化石燃料,主要是煤。这意味着在澳大利亚,计算用电每千瓦时产生0.905 kg二氧化碳,而马克斯·普朗克研究所每千瓦时排放0.23 kg二氧化碳。
图2 根据巴黎协定,一名澳大利亚天文学家和马克斯·普朗克天文研究所的一名德国研究人员在2018年的平均年排放量按来源分类,并与德国2030年的目标排放量进行比较。在德国和澳大利亚,与电力相关的排放包括计算和非计算消耗,其中绝大部分来自计算。
van der Tak确实指出,这项工作的大部分是在几年前完成的,而且世界已经前进了。例如,现在越来越多的办公室使用可再生能源。荷兰的研究发现,2019年荷兰天文学的碳足迹中有近三分之一(29%)来自电力使用,包括为六个研究所的本地计算供电。当时,一半的研究所都在使用绿色电力。但自那以后,又有两个国家转向了100%的可再生能源,van der Tak预计第六个国家将在未来两年内实现这一转变。
事实上,澳大利亚的情况也发生了变化。自2020年7月以来,该国三大国家高性能计算设施之一的OzSTAR超级计算机已经转向从附近的风电场购买100%可再生能源。拥有这个超级计算机斯威本科技大学声称,这将极大地减少其碳足迹,因为电力占排放的70%以上。
但是你如何计算出你正在使用的超级计算机的排放量呢?当数学家和物理学家Loïc Lannelongue发现没有简单的答案时,他开发了绿色算法。这是一个在线工具,使研究人员能够估计他们计算的碳足迹。
就职于英国剑桥大学的Lannelongue重申位置是关键。例如,在澳大利亚相同的硬件上运行相同的任务,将比在瑞士多排放大约70倍的碳,瑞士的大部分电力来自水电。该算法背后的研究[11]表明,如果一个更高效的计算中心比另一个效率更低的超级计算机使用更少的可再生能源,它可能很快失去其绿色优势。虽然估算任何算法的碳足迹都是基于硬件、任务所需时间以及数据中心或超级计算机的位置等关键因素,但绿色算法也有一个“实用比例因子”(PSF),用于估算实际执行计算的次数,这对排放量有直接影响。
图3 绿色算法是估算算法碳足迹的免费工具。它使用了许多因素,包括工具的硬件要求、运行时间和数据中心的位置。用户可以评估他们的计算结果,或者估计在其他架构上重新部署它们的碳节省或成本。这张图比较了来自不同科学领域的许多算法的碳足迹——从粒子物理模拟和DNA辐射到大气科学和机器学习——并将每个只运行一次的算法与同一任务的重复计算(PSF)进行了比较。将以克(g)为单位的二氧化碳(CO2)当量(e)与树木吸收的碳量和常见活动(如驾驶汽车)的排放量进行比较。
事实上,大多数算法都要运行多次——有时甚至要用不同的参数运行数百次——而且次数会因任务和研究领域的不同而有很大差异(图3)。这项研究还发现,南非以及美国一些州的计算机排放量与澳大利亚相似。另一方面,冰岛、挪威和瑞典的电力碳密集度特别低。
有了云计算,研究人员现在更容易选择使用哪台超级计算机。但如果他们无法切换到不同的机器,还有其他方法可以减少排放。Lannelongue说,仅仅使用最新版本的软件就可以带来巨大的变化。他解释说:“如果你不能在本地采取行动,更新版本和使用优化的软件可能是下一个重要步骤,因为这将影响一切,因为这将减少计算需求。”
但是,不仅仅是超级计算机上的模拟可能是碳密集型的。法国索邦大学的Kumiko Kotera是GRAND neutrino项目的创始人之一,他说,当你看到实验预测的排放量时,“你会发现真正昂贵的是数据存储和数据传输”。Kotera和她的同事发现,在实验的原型阶段,数据存储和传输将占全年总排放量的大约一半,在中期阶段占四分之一,在全面实验期间占三分之一以上[12]。相比之下,在这三个阶段,数据分析和模拟将分别产生约16%、13%和7%的排放。
数据存储和传输的碳足迹来自数据中心的能源需求。与超级计算机一样,数据存储在一定程度上可以通过使用排放量较低的数据中心来解决。Kotera说,这个大项目也将寻求减少数据量的策略。她解释说,这可能需要注意存档的内容——“我们不需要保留所有东西”——并找到有效清理数据的方法。
她解释说:“如果我们能够很快清理数据,我们可能会减少大量的数量和排放量。对于数据传输来说,这很棘手,因为这是一个全球网络。”但清理和减少数据量仍然有所帮助,科学家也可以小心他们传输的内容。多人在世界各地重复传输相同的数据片段会很快累积起来。
该团队计算出,GRAND五年原型阶段的数据传输将排放470 tCO2e——类似于从巴黎到敦煌机场(在中国原型的实验场地附近)的大约270次航班。事实上,研究人员发现,一年四次用飞机运输硬盘比在线传输数据的碳排放量要少很多个数量级。
加速器的足迹作为减少其整体碳排放的一部分,欧洲核子研究中心(CERN)聘请了一名环境工程师来监督未来建筑项目的土木工程。
由于数据中心的分布式和全球性,计算数据存储和传输的排放量可能会很棘手。Kotera警告说,他们的数字并不精确,因为有许多未知因素,而van der Tak不确定荷兰天文学的碳足迹分析涵盖了多少数据存储和传输,并补充说这可能是他们需要关注的事情。
粒子物理学家也需要尽自己的一份力量。例如,CERN每年产生大约100千兆字节的数据。这些数据通过全球LHC计算网格(WLCG)进行存储、分发和分析,这是一个由40多个国家的大约170个计算中心组成的全球协作组织。CERN现在发布环境报告,第二份报告于去年发布,描述了LHC实施的能源效率改进,特别是其收集更多单位能耗数据的能力。在升级后的机器的20年寿命中,它将比欧洲核子研究中心的旗舰设施最初启动时的能效高出10倍。但该报告也承认,它并没有真正涵盖WLCG的排放量。只有欧洲核子研究中心拥有或运营的WLCG设施的能源消耗是详细的。
1)更好的编码
Portegies Zwart说:“我看到我周围的很多人编码效率极低。”但正如他所解释的,如果你花更多的时间优化你的代码,它会运行得更快,从而产生更少的排放。转换编码语言也是一个好主意。
为了测试这一点,Portegies Zwart进行了一个实验,在实验中,他使用了一个算法,并使用了十几种不同的编码语言[13]运行它。他说,所有代码都没有经过特别优化,每一个代码都花了相似的时间来编写。他说,没有一个代码是特别优化的,每个代码花费的时间都差不多。但是Python(物理学家中最流行的编码语言)运行时间要长得多,因此比其他语言,如C++或Fortran,产生更多的排放。根据Portegies Zwart的说法,问题是Python非常容易使用,但很难优化,而其他语言更难编码,但更容易优化。
然而,简单地脱离Python并不一定是答案。作为对Portegies Zwart论文的回应,法国CNRS的研究员Pierre Augier认为,更好的教育和Python编译器的使用可能同样有效。法国格勒诺布尔-阿尔卑斯大学的流体动力学和湍流专家Augier使用更好的优化代码和五种不同的Python实现进行了类似的实验。他发现其中四个实现比C++和Fortran更快,产生的排放更少,并补充说它们也更容易理解和使用[14]。
Augier解释道:“我认为换一种语言并不容易,因为学习如何正确使用Python并不困难,”他认为,计算和编程应该成为物理教育中更大的一部分,而不是专注于使用什么样的编码语言。“我们应该在学生时代就学习它,只要我们专攻物理。”Portegies Zwart同意Python可以是高效的,但是他说这不能反映现实。他解释道:“我不是在抨击Python,我是在用大多数天文学家的方式使用Python,这不是非常高度优化的,”他认为,与其教物理学家更多的计算,也许物理研究所应该雇佣更多的计算机专家。他说:“我们擅长物理,但是一个计算机科学家花了我们学习物理的所有时间来学习如何与计算机交流,毫无疑问,(他们)会更擅长编程。”
2)改变心态
Lannelongue希望研究人员能开始更多地考虑他们的计算排放,并将其纳入决策。一个很好的例子是一夜之间运行低效的代码和软件,因为你有计算机资源,而且你要在家里睡觉,所以花很长时间也没关系。他解释说:“这没关系,除非你说如果我提高效率,我会减少温室气体排放,减少碳足迹——所以突然有了这样做的动机。”
当谈到这个宏大的项目时,Kotera说,计划是让实验拥有模拟库,允许人们重复使用通常运行的模拟,而不是生成自己的模拟,从而防止相同的数据一次又一次地被复制。根据Kotera的说法,这是常见的做法,即使是在大型合作中:不同的人重复运行相同的模拟,因为没有中央存储。她表示:“如今,只需按下一个按钮,运行一周的模拟,得到结果,然后说‘哦,我真的不需要它’,是如此容易。我们的目标是真正鼓励人们在运行模拟之前思考这是否是他们真正需要的东西。”
以上是Physics World原文给出的应对超算能耗过高的措施,但实际上,我们还有一种选择,即:
3)量子计算
2020年,NASA艾姆斯研究中心的Salvatore Mandrà和同事计算了NISQ(含噪中等规模量子)计算机和传统超级计算机解决RQC(随机量子电路)问题(即Google量子霸权中的任务)所需的能耗[15]。
他们设计了一个名为qFlex的程序,他们认为这是最有效的量子模拟器。
该团队在艾姆斯的Electra超级计算机和橡树岭的Summit超级计算机上实现了qFlex——其中Summit是当时世界上最强大的超级计算机。他们计算了两台超级计算机在计算过程中消耗的能量,并将其与NISQ使用的能耗进行了比较。
研究人员发现,他们的qFlex实现在Electra上运行需要97mWh,在Summit上运行需要21mWh,而NISQ只需要0.00042 MWh就可以解决这个问题。而美国家庭平均每年使用的电能是11 MWh。
橡树岭国家实验室(ORNL)的科学家[16]也认为量子计算机将比今天的超级计算机消耗更少的能源。ORNL的Travis Humble说:“今天拥有数千个处理器的高性能计算机需要大量的能源来执行复杂的科学计算。除了前所未有的解决重大问题的能力外,我们还发现量子计算机有潜力减少超过100万KWh的能耗。”
虽然目前拥有数十个量子比特的量子计算机在能耗方面还未展现显著优势,但是随着量子计算机的规模持续扩展,将会产生巨大的规模经济效应,例如,超导量子比特所需的稀释制冷机,在量子比特数量增加过程中,能耗几乎是恒定的,而量子比特增加带来的算力提升是指数级的。
由于计算速度将呈指数级增长,导致量子计算机本身的能耗大幅降低,同时通过量子模拟实现更好的能源,也能导致能源消耗的降低,例如开发更高效的电池。
总之,量子计算为当前计算能耗过高的问题提供了一条极具前景的道路。
参考链接:
[1]https://physicsworld.com/a/the-huge-carbon-footprint-of-large-scale-computing/
[2]https://www.sciencedirect.com/science/article/abs/pii/S0959378020307676
[3]https://iopscience.iop.org/article/10.1088/1748-9326/ab33e6
[4]https://www.nature.com/articles/d41586-020-02057-2
[5]https://www.sciencedirect.com/science/article/abs/pii/S0959652619311862
[6]https://www.nature.com/articles/s41893-021-00823-2
[7]https://www.nature.com/articles/s41550-020-1169-1
[8]https://www.sciencedirect.com/science/article/abs/pii/S0927650521000311
[9]https://www.nature.com/articles/s41550-021-01552-4
[10]https://www.nature.com/articles/s41550-020-1202-4
[11]https://onlinelibrary.wiley.com/doi/full/10.1002/advs.202100707
[12]https://www.sciencedirect.com/science/article/abs/pii/S0927650521000311
[13]https://www.nature.com/articles/s41550-020-1208-y
[14]https://www.nature.com/articles/s41550-021-01342-y
[14]https://physicsworld.com/a/quantum-computers-vastly-outperform-supercomputers-when-it-comes-to-energy-efficiency/
[15]https://www.ornl.gov/news/energy-quantum-computing-efficiency